def regla_trapecio_compuesta(f, x_i, x_f, n):
    h = (x_f - x_i)/n
    sumatorio = 0
    for k in range(2, n + 1):
        sumatorio += f(x_i + ((k - 1)*h))
    return (h/2)*(f(x_i) + f(x_f)) + h*sumatorio

def funcion(x):
    return 1/(1 + x**2)

xi, xf = 1, 3
intervalo = 5

print(f"Regla del trapecio compuesta ({intervalo} intervalos)\nel resultado obtenido para la integral I es {regla_trapecio_compuesta(funcion, xi, xf, intervalo):.7f}")